<template>
          <div class="list-container">
            <div class="sortList clearfix">
                <div class="center">
                    <!--banner轮播-->
                    <!-- <div class="swiper-container" ref="bannerSwiper">
                        <div class="swiper-wrapper">
                            <div class="swiper-slide" 
                            v-for="(banner,index) in bannerList" 
                            :key="banner.id">
                                <img :src="banner.imgUrl" />
                            </div>
                        </div> -->
                        <!-- 如果需要分页器 -->
                        <!-- <div class="swiper-pagination"></div> -->

                        <!-- 如果需要导航按钮 -->
                        <!-- <div class="swiper-button-prev"></div>
                        <div class="swiper-button-next"></div> -->
                    <!-- </div> -->
                    <SwiperLoop :bannerList="bannerList" :bannerSwiper="'bannerSwiper'"></SwiperLoop>
                </div>
                <div class="right">
                    <div class="news">
                        <h4>
                            <em class="fl">尚品汇快报</em>
                            <span class="fr tip">更多 ></span>
                        </h4>
                        <div class="clearix"></div>
                        <ul class="news-list unstyled">
                            <li>
                                <span class="bold">[特惠]</span>备战开学季 全民半价购数码
                            </li>
                            <li>
                                <span class="bold">[公告]</span>备战开学季 全民半价购数码
                            </li>
                            <li>
                                <span class="bold">[特惠]</span>备战开学季 全民半价购数码
                            </li>
                            <li>
                                <span class="bold">[公告]</span>备战开学季 全民半价购数码
                            </li>
                            <li>
                                <span class="bold">[特惠]</span>备战开学季 全民半价购数码
                            </li>
                        </ul>
                    </div>
                    <ul class="lifeservices">
                        <li class=" life-item ">
                            <i class="list-item"></i>
                            <span class="service-intro">话费</span>
                        </li>
                        <li class=" life-item ">
                            <i class="list-item"></i>
                            <span class="service-intro">机票</span>
                        </li>
                        <li class=" life-item ">
                            <i class="list-item"></i>
                            <span class="service-intro">电影票</span>
                        </li>
                        <li class=" life-item ">
                            <i class="list-item"></i>
                            <span class="service-intro">游戏</span>
                        </li>
                        <li class=" life-item">
                            <i class="list-item"></i>
                            <span class="service-intro">彩票</span>
                        </li>
                        <li class=" life-item">
                            <i class="list-item"></i>
                            <span class="service-intro">加油站</span>
                        </li>
                        <li class=" life-item">
                            <i class="list-item"></i>
                            <span class="service-intro">酒店</span>
                        </li>
                        <li class=" life-item">
                            <i class="list-item"></i>
                            <span class="service-intro">火车票</span>
                        </li>
                        <li class=" life-item ">
                            <i class="list-item"></i>
                            <span class="service-intro">众筹</span>
                        </li>
                        <li class=" life-item">
                            <i class="list-item"></i>
                            <span class="service-intro">理财</span>
                        </li>
                        <li class=" life-item">
                            <i class="list-item"></i>
                            <span class="service-intro">礼品卡</span>
                        </li>
                        <li class=" life-item">
                            <i class="list-item"></i>
                            <span class="service-intro">白条</span>
                        </li>
                    </ul>
                    <div class="ads">
                        <img src="./images/ad1.png" />
                    </div>
                </div>
            </div>
        </div>
</template>

<script>
import {mapState} from 'vuex'
import Swiper from 'swiper' // 引入swiper的js
// import 'swiper/css/swiper.min.css' // 引入swiper的css
export default {
  name: 'ListContainer',
  mounted(){
      this.getBannerList() 
        //   setTimeout(() => {
        //     // 在这里直接去实例化 new swiper对象,最终不可用
        //     // 原因:是因为我们在实例化swiper的时候,页面的轮播图结构还没有完全形成
        //     // 因为页面的结构是根据,动态请求回来的数据动态创建的,数据没回来,结构就不可能形成
        //     // 我们添加一个定时器,就可以解决页面没有形成的问题,但是不好,用户体验极差
        //     new Swiper(".swiper-container", {
        //     // direction: "vertical", // 垂直切换选项
        //     loop: true, // 循环模式选项

        //     // 如果需要分页器
        //     pagination: {
        //         el: ".swiper-pagination",
        //     },

        //     // 如果需要前进后退按钮
        //     navigation: {
        //         nextEl: ".swiper-button-next",
        //         prevEl: ".swiper-button-prev",
        //     },

        //     // 如果需要滚动条
        //     // scrollbar: {
        //     //   el: ".swiper-scrollbar",
        //     // },
        //     });
        //     }, 2000);
  },
  // 数据监视
//   watch:{
//       // 采用watch可以保证,数据一定先回来,然后在去实例化swiper,也不行
//       // 原因: 因为数据回来是回来的,数据回来后,页面形成也是需要时间的
//       //监视的数据 配置对象
//       bannerList:{
//           immediate:true,//这里的immediate没任何意义,只是为了代码保持一致
//           handler(newVal, oldVal){
//               //等待页面最近一次更新后完成回调
//               this.$nextTick(()=>{ 
//                 new Swiper(this.$refs.myBannerSwiper, {
//                 // direction: "vertical", // 垂直切换选项
//                 loop: true, // 循环模式选项

//                 // 如果需要分页器
//                 pagination: {
//                     el: ".swiper-pagination",
//                 },

//                 // 如果需要前进后退按钮
//                 navigation: {
//                     nextEl: ".swiper-button-next",
//                     prevEl: ".swiper-button-prev",
//                 },

//                 // 如果需要滚动条
//                 // scrollbar: {
//                 //   el: ".swiper-scrollbar",
//                 // },
//                 });
//             })
//           }
//       }
//   },
  methods:{
      getBannerList(){
          this.$store.dispatch('getBannerList')
      }
  },

  // 捞数据
  computed:{
      ...mapState({
          bannerList:state => state.home.bannerList
      })
  }
}
</script>

<style lang="less" scoped>
    .list-container {
        width: 1200px;
        margin: 0 auto;

        .sortList {
            height: 464px;
            padding-left: 210px;

            .center {
                box-sizing: border-box;
                width: 740px;
                height: 100%;
                padding: 5px;
                float: left;
            }

            .right {
                float: left;
                width: 250px;

                .news {
                    border: 1px solid #e4e4e4;
                    margin-top: 5px;

                    h4 {
                        border-bottom: 1px solid #e4e4e4;
                        padding: 5px 10px;
                        margin: 5px 5px 0;
                        line-height: 22px;
                        overflow: hidden;
                        font-size: 14px;

                        .fl {
                            float: left;
                        }

                        .fr {
                            float: right;
                            font-size: 12px;
                            font-weight: 400;
                        }
                    }

                    .news-list {
                        padding: 5px 15px;
                        line-height: 26px;

                        .bold {
                            font-weight: 700;
                        }
                    }
                }

                .lifeservices {
                    border-right: 1px solid #e4e4e4;
                    overflow: hidden;
                    display: flex;
                    flex-wrap: wrap;

                    .life-item {
                        border-left: 1px solid #e4e4e4;
                        border-bottom: 1px solid #e4e4e4;
                        margin-right: -1px;
                        height: 64px;
                        text-align: center;
                        position: relative;
                        cursor: pointer;
                        width: 25%;

                        .list-item {
                            background-image: url(./images/icons.png);
                            width: 61px;
                            height: 40px;
                            display: block;
                        }

                        .service-intro {
                            line-height: 22px;
                            width: 60px;
                            display: block;
                        }

                        &:nth-child(1) {
                            .list-item {
                                background-position: 0px -5px;
                            }
                        }

                        &:nth-child(2) {
                            .list-item {
                                background-position: -62px -5px;
                            }
                        }

                        &:nth-child(3) {
                            .list-item {
                                background-position: -126px -5px;
                            }
                        }

                        &:nth-child(4) {
                            .list-item {
                                background-position: -190px -5px;
                            }
                        }

                        &:nth-child(5) {
                            .list-item {
                                background-position: 0px -76px;
                            }
                        }

                        &:nth-child(6) {
                            .list-item {
                                background-position: -62px -76px;
                            }
                        }

                        &:nth-child(7) {
                            .list-item {
                                background-position: -126px -76px;
                            }
                        }

                        &:nth-child(8) {
                            .list-item {
                                background-position: -190px -76px;
                            }
                        }

                        &:nth-child(9) {
                            .list-item {
                                background-position: 0px -146px;
                            }
                        }

                        &:nth-child(10) {
                            .list-item {
                                background-position: -62px -146px;
                            }
                        }

                        &:nth-child(11) {
                            .list-item {
                                background-position: -126px -146px;
                            }
                        }

                        &:nth-child(12) {
                            .list-item {
                                background-position: -190px -146px;
                            }
                        }
                    }
                }

                .ads {
                    margin-top: 5px;

                    img {
                        opacity: 0.8;
                        transition: all 400ms;

                        &:hover {
                            opacity: 1;
                        }
                    }
                }
            }
        }
    }
</style>
